﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;

namespace MyPublish.Connection
{
    public abstract class DataConnectionProvider
    {
        public DataConnectionString ConnectionString { get; set; }

        public WebProxy Proxy { get; set; }

        protected DataConnectionProvider() { }

        protected DataConnectionProvider(DataConnectionString connectionString) 
            :this(connectionString,null)
        {}

        protected DataConnectionProvider(DataConnectionString connectionString, WebProxy proxy)
        {
            this.ConnectionString = connectionString;
            this.Proxy = proxy;
        }

        public abstract IEnumerable<object> ExecuteQuery();
        public abstract IEnumerable<object> ExecuteQuery(object data);
    }
}
